/*
 * LandBean.java
 *
 * Created on 14 avril 2007, 20:44
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package Session;

import Entity.Entreprise;
import Entity.Joueur;
import Entity.Land;
import Entity.Landien;
import Entity.MaitreDuJeu;
import java.util.List;
import java.util.Vector;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

/**
 *
 * @author amo
 */
@Stateless(mappedName="LandRemote2")
public class LandBean implements Session.LandRemote {

    @PersistenceContext
    private EntityManager em;
    
    /** Creates a new instance of LandBean */
    public LandBean() {
    }
    
    public Land ajouterLand(int id) {
        //TODO implement ajouterJoueu
       Land o = em.find(Land.class, id);
                if(o==null) {
                    o = new Land();
                    em.persist(o);
                        return o;
       
                } else {
      
                        return null;
                }
        
 
               
    }

    
    public  void modif(int id, Vector<Landien> v) {
		Land o = em.find(Land.class, id);
                o.setLesLandiens(v);
                //em.refresh(o);
    }
    public void modif(Vector<Joueur> vj,Vector<Entreprise> ve,MaitreDuJeu m ,int id) {
           Land o = em.find(Land.class, id);
        
            o.setLesJoueurs(vj);
            o.setLesEntreprises(ve);
            o.setLeMaitre(m);
	}

    public void persist(Object object) {
        // TODO:
         em.persist(object);
    }
    
    public Land getLeLand(int idLand) {
       Land o = em.find(Land.class, idLand);
       if(o==null) {
            return null;
       }else 
       {
           return o;
       }
    }
    
    	public List<Land>  readAll() 
        {
            return em.createQuery("SELECT l FROM Land l").getResultList();
        } 
        
        public void delete(Integer idMJJoueur) {
		Land o = (Land) em.find(Land.class, idMJJoueur);
		if(o==null) {
			
		} else {
			em.remove(o);
			
		}
	}
        public void bipSuivant(int id)
        {
            Land o = (Land) em.find(Land.class, id);
            o.setBipCourant(o.getBipCourant()+1);
		
        }
}
